using SheLife.Domain.Entities;

namespace SheLife.Domain.Interfaces.Repositories
{
    /// <summary>
    /// 成长目标任务仓储接口
    /// </summary>
    public interface IGrowthGoalTaskRepository : IRepository<GrowthGoalTask>
    {
        Task<IEnumerable<GrowthGoalTask>> GetByGoalIdAsync(Guid goalId);
        Task<IEnumerable<GrowthGoalTask>> GetByUserIdAsync(Guid userId);
        Task<IEnumerable<GrowthGoalTask>> GetActiveTasksAsync(Guid userId);
        Task<IEnumerable<GrowthGoalTask>> GetCompletedTasksAsync(Guid userId);
        Task<IEnumerable<GrowthGoalTask>> GetOverdueTasksAsync(Guid userId);
    }
}